home *** CD-ROM | disk | FTP | other *** search
- property ancestor
-
- on new me, tableName, castName, tableChannel, xLoc, vSlider, HSlider, descendant
- if objectp(descendant) then
- PassVar = descendant
- else
- PassVar = me
- end if
- ancestor = new(script("subtable object"), tableName, castName, tableChannel, xLoc, vSlider, HSlider, PassVar)
- return me
- end
-
- on trackMouse me
- startCell = cellToPoint(me._me, sprite(me.pTableChannel).mouseCell)
- trackMouse(me.pSuperTable, startCell)
- return me
- end
-
- on getSelectedData me, theRect
- selectedData = getSelectedData(ancestor, theRect)
- if the machineType = 256 then
- FindText = numToChar(160)
- else
- FindText = numToChar(202)
- end if
- MaxCount = count(selectedData)
- repeat with rc = 1 to MaxCount
- xText = getAt(selectedData, rc)
- xText = RemoveString(xText, FindText)
- setAt(selectedData, rc, xText)
- end repeat
- return selectedData
- end
-
- on CalcCenterofRect me, xRect
- if the machineType = 256 then
- l = getAt(xRect, 1)
- t = getAt(xRect, 2)
- R = getAt(xRect, 3)
- b = getAt(xRect, 4)
- xCenter = (R - l) / 2
- if ((l mod 2) = 1) and ((R mod 2) = 1) then
- xCenter = xCenter - 1
- end if
- if ((l mod 2) = 0) and ((R mod 2) = 0) then
- xCenter = xCenter - 1
- end if
- if ((l mod 2) = 1) and ((R mod 2) = 0) then
- xCenter = xCenter - 1
- end if
- yCenter = (b - t) / 2
- if ((t mod 2) = 1) and ((b mod 2) = 1) then
- yCenter = yCenter - 2
- end if
- xPoint = point(l + xCenter, t + yCenter)
- else
- xPoint = RectToLoc(xRect)
- end if
- return xPoint
- end
-
- on GetScrollNeeds me
- return [#v: me.pMemHeight > (me.pSpriteHeight + 1), #h: me.pMemWidth > (me.pSpriteWidth + 1)]
- end
-